Authorize

Request to obtain an authorization for a proposed funds transfer. An authorization is a response from a financial institution indicating that payment information is valid and funds are available in the payers account.

PUT https://qnbalahli.test.gateway.mastercard.com/api/rest/version/7 / merchant / {merchantId} / order / {orderid} / transaction / {transactionid}

Authentication

This operation requires authentication via one of the following methods:


  • Certificate authentication.
  • Basic HTTP authentication as described at w3.org. To authenticate to the API, leave the userid portion (to the left of the colon) blank and fill the password section with the API password provided to you.

Request

URL Parameters

{merchantId} Alphanumeric + additional characters REQUIRED

The unique identifier issued to you by your payment provider.


This identifier can be up to 12 characters in length.


Data may consist of the characters 0-9, a-z, A-Z, '-', '_'

Min length: 1 Max length: 40
{orderid} Integer REQUIRED

The unique identifier of the order, to distinguish it from any other order you ever issue.


A number comprising the digits 0-9, having at least one digit. (For a complete description, see http://www.w3.org/TR/xmlschema-2/#nonNegativeInteger.)

Min value: 10000000000 Max value: 9999999999999999
{transactionid} String REQUIRED

Unique identifier for this transaction to distinguish it from any other transactions on the order.


Data can consist of any characters

Min length: 1 Max length: 40

Fields

3DSecure OPTIONAL

Information on 3DSecure fields.

This class is applicable to externally authenticated transactions only.

3DSecure.acsEci Digits OPTIONAL

The Electronic Commerce Indicator returned by the card issuer in the authentication response message.

It indicates the level of security and authentication of the transaction.

Data is a string that consists of the characters 0-9.

Min length: 1 Max length: 2
3DSecure.authenticationStatus Enumeration OPTIONAL

Indicates if the cardholder verification was successful.

Included only if payment authentication was attempted and a PARes (Payer Authentication Response) was received by the MPI.

The PARes message is the response received from the card Issuer's Access Control Server (ACS) after the cardholder has completed the authentication process.

Value must be a member of the following list. The values are case sensitive.

AUTHENTICATION_ATTEMPTED

Authentication was attempted but the card issuer did not perform the authentication.

AUTHENTICATION_NOT_AVAILABLE

An internal error occurred and Authentication is not currently available.

AUTHENTICATION_SUCCESSFUL

The cardholder was successfully authenticated.

3DSecure.authenticationToken Base64 OPTIONAL

The base64 encoded value generated by the card issuer.

Included in subsequent transaction request messages and used by the card scheme to verify that the authentication occurred and the values provided are valid. The token should be used unaltered.
This field corresponds to the Cardholder Authentication Verification Value (CAVV) for Visa, the Accountholder Authentication Value (AAV) for MasterCard and JCB, or the American Express Verification Value (AEVV) for American Express.

Data is Base64 encoded

allowable lengths 28 or 32
3DSecure.enrollmentStatus Enumeration REQUIRED

Indicates if the cardholder is enrolled for 3-D Secure authentication.

Value must be a member of the following list. The values are case sensitive.

ENROLLED

The card is enrolled for 3DS authentication.

ENROLLMENT_STATUS_UNDETERMINED

The Issuer's ACS was unable to process the request to check enrollment or the card is ineligible.

NOT_ENROLLED

The card is not enrolled for 3DS authentication.

3DSecure.xid Base64 OPTIONAL

A unique transaction identifier generated by the Payment Gateway on behalf of the merchant to identify the 3DS transaction.

This field is mandatory for Verified By Visa transactions if authentication was available. The XID should be used in operation requests unaltered.

Data is Base64 encoded

allowable length 28
3DSecureId ASCII Text OPTIONAL

A unique identifier supplied by the merchant for the authentication.

It is first defined in the check3DSEnrollment operation, and then included in subsequent operations.
It is not used when the authentication is performed externally.

Data consists of ASCII characters

Min length: 1 Max length: 64
action OPTIONAL
action.bypassMerchantRiskRules Enumeration OPTIONAL

The risk rules you wish to bypass when performing risk assessment for an order.

Value must be a member of the following list. The values are case sensitive.

ALL
airline OPTIONAL

Airline industry specific data

airline.bookingReference Alphanumeric OPTIONAL

The record locator used to access a specific Passenger Name Record (PNR).

PNR is a record in the database of a booking system that contains the itinerary for a passenger, or a group of passengers traveling together.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 6 Max length: 15
airline.documentType Enumeration OPTIONAL

The type of charge associated with the transaction.

Document Type Code

Value must be a member of the following list. The values are case sensitive.

ADDITIONAL_COLLECTION

Additional Collection

AGENCY_EXCHANGE_ORDER

Agency Exchange Order

AGENCY_GROUP_TICKET

Agency Group Ticket

AGENCY_MISCELLANEOUS_CHARGE_ORDER

Agency Misc. Charge Order (MCO)

AGENCY_PASSENGER_TICKET

Agency Passenger Ticket

AGENCY_TOUR_ORDER_OR_VOUCHER

Agency Tour Order/Voucher

AIR_FREIGHT

SPD/Air Freight

ANIMAL_TRANSPORTATION_CHARGE

Animal Transportation Charge

CATALOGUE_MERCHANDISE_ORDERED

Catalogue Merchandise Ordered

CLUB_MEMBERSHIP_FEE

Club Membership Fee

COUPON_BOOK

Coupon Book

CREDIT_CLASS_SERVICE_ADJUSTMENT

Credit Class of Service Adjustment

CREDIT_DENIED_BOARDING

Credit Denied Boarding

CREDIT_EXCHANGE_REFUND

Credit Exchange Refund

CREDIT_LOST_TICKET_REFUND

Credit Lost Ticket Refund

CREDIT_MISCELLANEOUS_REFUND

Credit Misc. Refund

CREDIT_MULTIPLE_UNUSED_TICKETS

Credit Multiple Unused Tickets

CREDIT_OVERCHARGE_ADJUSTMENT

Credit Overcharge Adjustment

CREDIT_UNUSED_TRANSPORTATION

Credit Unused Transportation

DEBT_ADJUSTMENT_DUPLICATE_REFUND_OR_USE

Debt Adjustment Duplicate Refund/Use

DUTY_FREE_SALE

Duty Free Sale

EXCESS_BAGGAGE

Excess Baggage

EXCHANGE_ADJUSTMENT

Exchange Adjustment

EXCHANGE_ORDER

Exchange Order

FIREARMS_CASE

Firearms Case

FREQUENT_FLYER_FEE_OR_PURCHASE

Frequent Flyer Fee/Purchase

FREQUENT_FLYER_FULFILLMENT

Frequent Flyer Fulfillment

FREQUENT_FLYER_OVERNIGHT_DELIVERY_CHARGE

Frequent Flyer Overnight Delivery Charge

GROUP_TICKET

Group Ticket

IN_FLIGHT_ADJUSTMENT

In-flight Adjustment

IN_FLIGHT_CHARGES

In-flight Charges

IN_FLIGHT_DUTY_FREE_PURCHASE

In-flight Duty Free Purchase

IN_FLIGHT_MERCHANDISE_ORDERED

In-flight Merchandise Ordered

IN_FLIGHT_PHONE_CHARGES

In-flight Phone Charges

KENNEL_CHARGE

Kennel Charge

LOST_TICKET_APPLICATION

Lost Ticket Application

MISCELLANEOUS_CHARGE_ORDER_OR_PREPAID_TICKET_ADVICE

Misc. Charge Order (MCO) / Prepaid Ticket Auth.

MISCELLANEOUS_TAXES_FEES

Miscellaneous Tax(es) Fee(s)

PASSENGER_TICKET

Passenger Ticket

SELF_SERVICE_TICKETS

Self-Service Ticket(s)

SENIOR_CITIZEN_DISCOUNT_BOOKLETS

Senior Citizen Discount Booklets

SMALL_PACKAGE_DELIVERY

Small Package Delivery

SPECIAL_SERVICE_TICKET

Special Service Ticket

SUPPORTED_REFUND

Supported Refund

TICKET_BY_MAIL

Ticket by Mail

TOUR_DEPOSIT

Tour Deposit

TOUR_ORDER_VOUCHER

Tour Order Voucher

UNDERCHARGE_ADJUSTMENT

Undercharge Adjustment

UNSUPPORTED_REFUND

Unsupported Refund

UPGRADE_CHARGE

Upgrade Charge

VENDOR_REFUND_CREDIT

Vendor Refund Credit

VENDOR_SALE

Vendor Sale

airline.itinerary OPTIONAL

Itinerary details

airline.itinerary.leg[n] OPTIONAL

Travel leg details.

airline.itinerary.leg[n].carrierCode Regex OPTIONAL

The 2-character IATA airline code or 3 digit accounting code or both of the airline carrier for the trip leg.

Data must match regex

regex \w{2}|\d{3}|\w{2}/\d{3} message Carrier code must be 2 characters, 3 digits or a combination of both in the format: ZZ/999
airline.itinerary.leg[n].conjunctionTicketNumber Alphanumeric OPTIONAL

The ticket containing the coupon for this leg for an itinerary with more than four trip legs.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.itinerary.leg[n].couponNumber Alphanumeric OPTIONAL

The coupon number on the ticket for the trip leg.

Each trip leg requires a separate coupon. The coupon within the series is identified by the coupon number.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 1
airline.itinerary.leg[n].departureAirport Upper case alphabetic text OPTIONAL

The 3 character IATA airport code of the departure airport for the trip leg.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.itinerary.leg[n].departureDate Date OPTIONAL

Date of departure for the trip leg.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

airline.itinerary.leg[n].departureTax Decimal OPTIONAL

Tax payable on departure for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].departureTime Time OPTIONAL

Departure time in local time for the departure airport for this trip leg.

Data must comply with ISO 8601 extended time formats, hh:mm[:ss]Z or hh:mm[:ss](+/-)hh[:mm]

airline.itinerary.leg[n].destinationAirport Upper case alphabetic text OPTIONAL

The 3 character IATA airport code for the destination airport for the trip leg.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.itinerary.leg[n].destinationArrivalTime Time OPTIONAL

Arrival time in local time for the destination airport for this trip leg.

Data must comply with ISO 8601 extended time formats, hh:mm[:ss]Z or hh:mm[:ss](+/-)hh[:mm]

airline.itinerary.leg[n].endorsementsRestrictions Alphanumeric OPTIONAL

Restrictions (e.g. non-refundable) or endorsements applicable to the trip leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 20
airline.itinerary.leg[n].exchangeTicketNumber Alphanumeric OPTIONAL

New ticket number issued when a ticket is exchanged for the trip leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.itinerary.leg[n].fare Decimal OPTIONAL

Total fare payable for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].fareBasis Alphanumeric OPTIONAL

Code defining the rules forming the basis of the fare (type of fare, class entitlement, etc.)

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 24
airline.itinerary.leg[n].fees Decimal OPTIONAL

Total fees payable for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].flightNumber Alphanumeric OPTIONAL

The flight number for the trip leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 4 Max length: 6
airline.itinerary.leg[n].stopoverPermitted Boolean OPTIONAL

Indicates if a stopover is permitted for the trip leg.

JSON boolean values 'true' or 'false'.

airline.itinerary.leg[n].taxes Decimal OPTIONAL

Total taxes payable for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].travelClass Alphanumeric OPTIONAL

The industry code indicating the class of service (e.g. Business, Coach) for the leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 3
airline.itinerary.numberInParty Digits OPTIONAL

Number of passengers associated with this booking.

Data is a string that consists of the characters 0-9.

Min length: 1 Max length: 3
airline.itinerary.originCountry Upper case alphabetic text OPTIONAL

The 3 character ISO 3166-1 alpha-3 country code of the country of origin for the itinerary.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.passenger[n] OPTIONAL

Passenger details

airline.passenger[n].firstName String OPTIONAL

First name of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 50
airline.passenger[n].lastName String OPTIONAL

Last name of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 20
airline.passenger[n].middleName String OPTIONAL

Middle name of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 50
airline.passenger[n].specificInformation Alphanumeric OPTIONAL

Passenger specific information recorded on the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 59
airline.passenger[n].title String OPTIONAL

Title of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 20
airline.planNumber Alphanumeric OPTIONAL

Plan number supplied by the airline for this booking.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 2 Max length: 2
airline.ticket OPTIONAL

Ticket details

airline.ticket.conjunctionTicketIndicator Boolean OPTIONAL

Indicates if a conjunction ticket with additional coupons was issued.

Conjunction ticket refers to two or more tickets concurrently issued to a passenger and which together constitute a single contract of carriage.

JSON boolean values 'true' or 'false'.

airline.ticket.customerReference String OPTIONAL

Information supplied by the customer.

For example, Frequent Flyer number.

Data can consist of any characters

Min length: 1 Max length: 20
airline.ticket.eTicket Boolean OPTIONAL

Indicates if an electronic ticket was issued.

JSON boolean values 'true' or 'false'.

airline.ticket.exchangedTicketNumber Alphanumeric OPTIONAL

The original ticket number when this is a transaction for an exchanged ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.ticket.issue OPTIONAL

Ticket issue information.

airline.ticket.issue.address String OPTIONAL

The address where the ticket was issued.

Data can consist of any characters

Min length: 1 Max length: 16
airline.ticket.issue.carrierCode Regex OPTIONAL

The 2-character IATA airline code or 3 digit accounting code or both of the airline carrier issuing the ticket.

Data must match regex

regex \w{2}|\d{3}|\w{2}/\d{3} message Carrier code must be 2 characters, 3 digits or a combination of both in the format: ZZ/999
airline.ticket.issue.carrierName Alphanumeric OPTIONAL

Name of airline carrier issuing the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 25
airline.ticket.issue.city Alphanumeric OPTIONAL

The city/town where the ticket was issued.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 18
airline.ticket.issue.country Upper case alphabetic text OPTIONAL

The 3 character ISO 3166-1 alpha-3 country code of the country where the ticket was issued.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.ticket.issue.date Date OPTIONAL

The date the ticket was issued.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

airline.ticket.issue.travelAgentCode Alphanumeric OPTIONAL

Industry code of the travel agent issuing the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 8 Max length: 9
airline.ticket.issue.travelAgentName Alphanumeric OPTIONAL

Name of the travel agent issuing the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 30
airline.ticket.restricted Boolean OPTIONAL

Indicates if the issued ticket is refundable.

JSON boolean values 'true' or 'false'.

airline.ticket.ticketNumber Alphanumeric OPTIONAL

The airline ticket number associated with the transaction.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.ticket.totalFare Decimal OPTIONAL

Total fare for all trip legs on the ticket.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.ticket.totalFees Decimal OPTIONAL

Total fee for all trip legs on the ticket.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.ticket.totalTaxes Decimal OPTIONAL

Total taxes for all trip legs on the ticket.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.transactionType Enumeration OPTIONAL

The type of transaction performed against this airline booking.

Transaction Type

Value must be a member of the following list. The values are case sensitive.

EXCHANGE_TICKET

Exchange Ticket

MISCELLANEOUS_CHARGE

Miscellaneous Charge

REFUND

Refund

REVERSAL

Reversal

TICKET_PURCHASE

Ticket Purchase

TOUR_ORDER

Tour Order

apiOperation String = AUTHORIZE FIXED

Any sequence of zero or more unicode characters.

billing OPTIONAL
billing.address OPTIONAL

The billing address of the person.

billing.address.city String OPTIONAL

The city portion of the payers address.

Data can consist of any characters

Min length: 1 Max length: 100
billing.address.country Upper case alphabetic text OPTIONAL

The 3 letter ISO standard alpha country code of the payers address.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
billing.address.postcodeZip Alphanumeric + additional characters OPTIONAL

The post code or zip code of the payers address.

Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'

Min length: 1 Max length: 10
billing.address.stateProvince String OPTIONAL

The state or province of the payers address.

Data can consist of any characters

Min length: 1 Max length: 20
billing.address.street String OPTIONAL

The street name and number, or the Post Office Box details, of the payers address.

Data can consist of any characters

Min length: 1 Max length: 100
billing.phone String OPTIONAL

The phone number of the person to whom the order is being billed.

Data can consist of any characters

Min length: 1 Max length: 20
cardDetails REQUIRED

The card details, which may be represented by combining one or more of the following: Card Details, Form Session Id and/or Card Token.

Precedence rules will be applied in that order, i.e. Card Details will override From Session details which will override Card Token details. Each of these may represent partial details, however the combination must result in a full and complete set of card details. See Using Multiple Sources of Card Details for examples.

cardDetails.card OPTIONAL

Details as shown on the card.

cardDetails.card.expiry OPTIONAL

Expiry date, as shown on the card.

cardDetails.card.expiry.month Digits REQUIRED

Month, as shown on the card.

Months are numbered January=1, through to December=12.

Data is a number between 1 and 12 represented as a string.

cardDetails.card.expiry.year Digits REQUIRED

Year, as shown on the card.

The Common Era year is 2000 plus this value.

Data is a string that consists of the characters 0-9.

Min length: 2 Max length: 2
cardDetails.card.holder OPTIONAL
cardDetails.card.holder.firstName String OPTIONAL

The first name of the person that the bill is being sent to.

Data can consist of any characters

Min length: 1 Max length: 50
cardDetails.card.holder.fullName String OPTIONAL

The full name of the person that the bill is being sent to.

Data can consist of any characters

Min length: 1 Max length: 100
cardDetails.card.holder.lastName String OPTIONAL

The last name or surname of the person that the bill is being sent to.

Data can consist of any characters

Min length: 1 Max length: 50
cardDetails.card.holder.middleName String OPTIONAL

The middle name of the person that the bill is being sent to.

If there is more than one middle name, this is the first middle name.

Data can consist of any characters

Min length: 1 Max length: 50
cardDetails.card.holder.title String OPTIONAL

The title of the person that the bill is being sent to.

Data can consist of any characters

Min length: 0 Max length: 20
cardDetails.card.number Digits OPTIONAL

Credit card number as printed on the card.

Data is a string that consists of the characters 0-9.

Min length: 9 Max length: 19
cardDetails.card.securityCode Digits OPTIONAL

Card verification code, as printed on the back or front of the card.

Data is a string that consists of the characters 0-9.

Min length: 3 Max length: 4
cardDetails.card.sequenceNumber Digits OPTIONAL

The card sequence number for transactions where the data is read through a chip on the EMV card.

Data is a number between 0 and 999 represented as a string.

cardDetails.card.track1 String OPTIONAL

7 bit ASCII text representing the card track 1 data.

Start and end sentinels as well as the LRC must be included.

Data can consist of any characters

Min length: 2 Max length: 79
cardDetails.card.track2 String OPTIONAL

7 bit ASCII text representing the card track 2 data.

Start and end sentinels as well as the LRC must be included. The contents of this field must match the PAN and expiry fields included in the Transaction Request.

Data can consist of any characters

Min length: 2 Max length: 40
cardDetails.cardToken Alphanumeric OPTIONAL

Uniquely identifies a card and associated details.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 40
cardDetails.session ASCII Text OPTIONAL

Session carrying the card details to be used.

Data consists of ASCII characters

Min length: 31 Max length: 35
correlationId String OPTIONAL

A transient identifier for the request, that can be used to match the response to the request.

The value provided is not validated, does not persist in the gateway, and is returned as provided in the response to the request.

Data can consist of any characters

Min length: 1 Max length: 100
currencyConversion OPTIONAL

Currency Conversion specific data

currencyConversion.baseAmount Decimal OPTIONAL

The amount of the transaction in the base (merchant-configured) currency.

Used if the transaction amount is an amount that was converted from a base currency amount.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
currencyConversion.baseCurrency Upper case alphabetic text OPTIONAL

The base (merchant-configured) currency of the transaction expressed as an ISO 4217 alpha code.

Used if the transaction amount is an amount that was converted from a base currency amount.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
customer OPTIONAL
customer.ani String OPTIONAL

The telephone number captured by ANI (Automatic Number Identification) when the customer calls to place the order.

Data can consist of any characters

Min length: 1 Max length: 10
customer.aniCallType String OPTIONAL

The 2 digit ANI information identifier provided by the telephone company to indicate the call type, for example, cellular (61-63), toll free (24,25), etc.

Data can consist of any characters

Min length: 1 Max length: 2
customer.browser String OPTIONAL

The web browser used by the customer to place the order.

For example, MOZILLA/4.0 (COMPATIBLE; MSIE 5.0; WINDOWS 95)

Data can consist of any characters

Min length: 1 Max length: 255
customer.email Email OPTIONAL

The email address of the customer.

Ensures that the email address is longer than 3 characters and adheres to a generous subset of valid RFC 2822 email addresses

customer.hostname String OPTIONAL

The name of the server to which the customer is connected.

Data can consist of any characters

Min length: 1 Max length: 60
customer.ipAddress String OPTIONAL

The IP address of the computer used by the customer, in nnn.nnn.nnn.nnn format.

Data can consist of any characters

Min length: 7 Max length: 15
order OPTIONAL
order.productSKU String OPTIONAL

Unique SKU (Stock Keeping Unit) identifier of the product associated with this authorization/pay request.

In case of multiple products, enter the SKU for the single, most expensive product.

Data can consist of any characters

Min length: 1 Max length: 15
order.reference String OPTIONAL

The identifier of the order.

For example, a shopping cart number, an order number, or an invoice number.

Data can consist of any characters

Min length: 1 Max length: 40
paymentPlan OPTIONAL

Information about the payment plan selected by the cardholder.

Payment Plan is a payment option available to cardholders who wish to repay the purchase amount in a number of monthly installments with or without a deferral period.

paymentPlan.numberOfDeferrals Digits OPTIONAL

The number of months for which the payment is deferred.

This field is valid only if plan type is Banamex_Custom.

Data is a number between 1 and 99 represented as a string.

paymentPlan.numberOfPayments Digits REQUIRED

The number of monthly payments payable by the cardholder.

Data is a number between 1 and 99 represented as a string.

paymentPlan.planId String OPTIONAL

The unique identifier for the payment plan.

This field is valid only if plan type is Banamex_Custom. It is the system-generated identifier assigned to the plan when it is configured for the merchant in the payment gateway

Data can consist of any characters

Min length: 1 Max length: 16
paymentPlan.type Enumeration REQUIRED

The type of payment plan.

Value must be a member of the following list. The values are case sensitive.

AMEX_PLANAMEX
AMEX_PLANN
BANAMEX_CUSTOM
posTerminal OPTIONAL
posTerminal.attended Enumeration OPTIONAL

Indicates if the terminal has been attended by the merchant.

Value must be a member of the following list. The values are case sensitive.

ATTENDED

Attended terminal.

UNATTENDED

Unattended terminal.

UNKNOWN_OR_UNSPECIFIED

Unknown or unspecified.

posTerminal.cardholderActivated Enumeration OPTIONAL

Indicates if the terminal is activated by the cardholder.

Value must be a member of the following list. The values are case sensitive.

NOT_CARDHOLDER_ACTIVATED

Terminal is not activated by the cardholder.

SELF_SERVICE_TERMINAL

Terminal is self serviced.

posTerminal.entryMode Digits OPTIONAL

Indicates the entry mode the cardholder/merchant used to enter the PAN and PIN details of the card.

The first two digits indicate the PAN entry mode and the last digit indicates the PIN entry mode. For example, 011 may indicate manual PAN entry (01) with PIN entry on the terminal (1).

PAN ENTRY Mode
01 - Manual Entry
02 - Magnetic stripe read, but full unaltered contents not provided
04 - OCR/MICR coding read
05 - PAN auto entry via chip
07 - Auto-entry via contactless magnetic chip
79 - Chip card at chip-capable terminal was unable to process transaction using data on the chip or magnetic stripe on the card-therefore, PAN entry via manual entry
80 - Chip card at chip-capable terminal was unable to process transaction using data on the chip therefore; the terminal defaulted to the magnetic stripe read for the PAN. This is referred to as fallback.
90 - Magnetic stripe read and full, unaltered contents provided
91 - Auto-entry via contactless magnetic strip

PIN Entry Mode
0 - Unspecified or unknown
1 - Terminal has PIN entry capability
2 - Terminal does not have PIN entry capability (default)
8 - Terminal has PIN entry capability but PIN pad is not currently operative

Data is a string that consists of the characters 0-9.

Min length: 3 Max length: 3
posTerminal.inputCapability Enumeration OPTIONAL

Indicates the type of input the terminal is capable of receiving.

Inputs include Magnetic strip read (MSR) key entry, chip, contactless MSR/chip, etc.

Value must be a member of the following list. The values are case sensitive.

CHIP

Chip read only.

CHIP_AND_KEY_ENTRY_AND_MAGNETIC_STRIPE

MSR, chip and key entry.

CHIP_AND_MAGNETIC_STRIPE

MSR and chip.

CONTACTLESS_CHIP

Contactless chip.

CONTACTLESS_MAGNETIC_STRIPE

Contactless MSR.

KEY_ENTRY

Key entry only.

KEY_ENTRY_AND_MAGNETIC_STRIPE

MSR and key entry.

MAGNETIC_STRIPE

Magnetic strip read (MSR) only.

posTerminal.location Enumeration OPTIONAL

Indicates the physical location of the terminal in relation to the card acceptor facility.

Value must be a member of the following list. The values are case sensitive.

OFF_CARD_ACCEPTOR_PREMISES

Off premises of card acceptor.

ON_CARD_ACCEPTOR_PREMISES

On premises of card acceptor.

shipping OPTIONAL
shipping.address OPTIONAL

The shipping address of the person.

shipping.address.city String OPTIONAL

The city portion of the payers address.

Data can consist of any characters

Min length: 1 Max length: 100
shipping.address.country Upper case alphabetic text OPTIONAL

The 3 letter ISO standard alpha country code of the payers address.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
shipping.address.postcodeZip Alphanumeric + additional characters OPTIONAL

The post code or zip code of the payers address.

Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'

Min length: 1 Max length: 10
shipping.address.stateProvince String OPTIONAL

The state or province of the payers address.

Data can consist of any characters

Min length: 1 Max length: 20
shipping.address.street String OPTIONAL

The street name and number, or the Post Office Box details, of the payers address.

Data can consist of any characters

Min length: 1 Max length: 100
shipping.firstName String OPTIONAL

The first name of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 50
shipping.fullName String OPTIONAL

The full name of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 100
shipping.lastName String OPTIONAL

The last name or surname of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 50
shipping.method Enumeration OPTIONAL

The shipping method code to indicate the time frame and the priority of the order.

Value must be a member of the following list. The values are case sensitive.

ELECTRONIC

Electronic delivery.

GROUND

Ground (4 or more days).

OVERNIGHT

Overnight (next day).

PRIORITY

Priority (2-3 days).

SAME_DAY

Same day.

shipping.middleName String OPTIONAL

The middle name of the person to whom the order is being shipped.

If there is more than one middle name, this is the first middle name.

Data can consist of any characters

Min length: 1 Max length: 50
shipping.phone String OPTIONAL

The phone number of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 20
shipping.title String OPTIONAL

The title of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 20
transaction REQUIRED
transaction.acquirer OPTIONAL

Additional information to be passed to acquirer.

transaction.acquirer.customData String OPTIONAL

Additional information requested by the acquirer which cannot be passed using other available data fields.

This field must not contain sensitive data.

Data can consist of any characters, but sensitive data will be rejected

Min length: 1 Max length: 2048
transaction.amount Decimal REQUIRED

Transaction Amount.

Expressed as a decimal number in the units of the currency. For example 12.34 in USD is the amount 12 dollars and 34 cents.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
transaction.cashAdvance Boolean OPTIONAL

Set this flag if the transaction is a manual cash disbursement transaction, i.e. cash is disbursed upon the acceptance of a card by a financial institution teller.

JSON boolean values 'true' or 'false'.

transaction.currency Upper case alphabetic text REQUIRED

The currency of the transaction expressed as an ISO 4217 alpha code, e.g. USD.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
transaction.customerReference ASCII Text OPTIONAL

The customer's own reference corresponding to the transaction.

For example, an invoice number. Data may be reformatted according to acquirer field requirements.

Data consists of ASCII characters

Min length: 0 Max length: 25
transaction.frequency Enumeration OPTIONAL

Indicates the frequency of the transaction offered to the payer.

Value must be a member of the following list. The values are case sensitive.

INSTALLMENT

Indicates an installment transaction where the payer authorizes you to deduct multiple payments over an agreed period of time for a single purchase.

RECURRING

Indicates a recurring transaction where the payer authorizes you to automatically debit their accounts for bill or invoice payments.

SINGLE

Indicates a single transaction where a single payment is used to complete the order.

transaction.reference String OPTIONAL

An optional identifier for this transaction.

Data can consist of any characters

Min length: 1 Max length: 40
transaction.source Enumeration OPTIONAL

Indicates the source through which you received the transaction.

Value must be a member of the following list. The values are case sensitive.

CALL_CENTRE

Transaction conducted via a call centre.

CARD_PRESENT

Transaction where the card is presented to the merchant.

INTERNET

Transaction conducted over the Internet.

MAIL_ORDER

Transaction received by mail.

MOTO

Transaction received by mail or telephone.

TELEPHONE_ORDER

Transaction received by telephone.

VOICE_RESPONSE

Transaction conducted by a voice/DTMF recognition system.

transaction.tax OPTIONAL
transaction.tax.local OPTIONAL
transaction.tax.local.amount Decimal OPTIONAL

Local tax amount.

Expressed as a decimal number in the units of the currency. For example 12.34 in USD is the amount 12 dollars and 34 cents.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
transaction.tax.local.exempt Boolean OPTIONAL

Indicates whether the transaction is exempt from local tax or not.

JSON boolean values 'true' or 'false'.

transaction.tax.local.reference String OPTIONAL

Local tax reference value associated with the transaction.

Data can consist of any characters

Min length: 1 Max length: 20

Response

Fields

3DSecure CONDITIONAL

Information on 3DSecure fields.

3DSecure.acsEci Digits CONDITIONAL

The Electronic Commerce Indicator returned by the card issuer in the authentication response message.

It indicates the level of security and authentication of the transaction.

Data is a string that consists of the characters 0-9.

Min length: 1 Max length: 2
3DSecure.authenticationStatus Enumeration CONDITIONAL

Indicates if the cardholder verification was successful.

Included only if payment authentication was attempted and a PARes (Payer Authentication Response) was received by the MPI.

The PARes message is the response received from the card Issuer's Access Control Server (ACS) after the cardholder has completed the authentication process.

Value must be a member of the following list. The values are case sensitive.

AUTHENTICATION_ATTEMPTED

Authentication was attempted but the card issuer did not perform the authentication.

AUTHENTICATION_NOT_AVAILABLE

An internal error occurred and Authentication is not currently available.

AUTHENTICATION_SUCCESSFUL

The cardholder was successfully authenticated.

3DSecure.authenticationToken Base64 CONDITIONAL

The base64 encoded value generated by the card issuer.

Included in subsequent transaction request messages and used by the card scheme to verify that the authentication occurred and the values provided are valid. The token should be used unaltered.
This field corresponds to the Cardholder Authentication Verification Value (CAVV) for Visa, the Accountholder Authentication Value (AAV) for MasterCard and JCB, or the American Express Verification Value (AEVV) for American Express.

Data is Base64 encoded

allowable lengths 28 or 32
3DSecure.enrollmentStatus Enumeration ALWAYS PROVIDED

Indicates if the cardholder is enrolled for 3-D Secure authentication.

Value must be a member of the following list. The values are case sensitive.

ENROLLED

The card is enrolled for 3DS authentication.

ENROLLMENT_STATUS_UNDETERMINED

The Issuer's ACS was unable to process the request to check enrollment or the card is ineligible.

NOT_ENROLLED

The card is not enrolled for 3DS authentication.

3DSecure.xid Base64 CONDITIONAL

A unique transaction identifier generated by the Payment Gateway on behalf of the merchant to identify the 3DS transaction.

This field is mandatory for Verified By Visa transactions if authentication was available. The XID should be used in operation requests unaltered.

Data is Base64 encoded

allowable length 28
3DSecureId ASCII Text CONDITIONAL

A unique identifier supplied by the merchant for the authentication.

It is first defined in the check3DSEnrollment operation, and then included in subsequent operations.
It is not used when the authentication is performed externally.

Data consists of ASCII characters

Min length: 1 Max length: 64
airline CONDITIONAL

Airline industry specific data

airline.bookingReference Alphanumeric CONDITIONAL

The record locator used to access a specific Passenger Name Record (PNR).

PNR is a record in the database of a booking system that contains the itinerary for a passenger, or a group of passengers traveling together.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 6 Max length: 15
airline.documentType Enumeration CONDITIONAL

The type of charge associated with the transaction.

Document Type Code

Value must be a member of the following list. The values are case sensitive.

ADDITIONAL_COLLECTION

Additional Collection

AGENCY_EXCHANGE_ORDER

Agency Exchange Order

AGENCY_GROUP_TICKET

Agency Group Ticket

AGENCY_MISCELLANEOUS_CHARGE_ORDER

Agency Misc. Charge Order (MCO)

AGENCY_PASSENGER_TICKET

Agency Passenger Ticket

AGENCY_TOUR_ORDER_OR_VOUCHER

Agency Tour Order/Voucher

AIR_FREIGHT

SPD/Air Freight

ANIMAL_TRANSPORTATION_CHARGE

Animal Transportation Charge

CATALOGUE_MERCHANDISE_ORDERED

Catalogue Merchandise Ordered

CLUB_MEMBERSHIP_FEE

Club Membership Fee

COUPON_BOOK

Coupon Book

CREDIT_CLASS_SERVICE_ADJUSTMENT

Credit Class of Service Adjustment

CREDIT_DENIED_BOARDING

Credit Denied Boarding

CREDIT_EXCHANGE_REFUND

Credit Exchange Refund

CREDIT_LOST_TICKET_REFUND

Credit Lost Ticket Refund

CREDIT_MISCELLANEOUS_REFUND

Credit Misc. Refund

CREDIT_MULTIPLE_UNUSED_TICKETS

Credit Multiple Unused Tickets

CREDIT_OVERCHARGE_ADJUSTMENT

Credit Overcharge Adjustment

CREDIT_UNUSED_TRANSPORTATION

Credit Unused Transportation

DEBT_ADJUSTMENT_DUPLICATE_REFUND_OR_USE

Debt Adjustment Duplicate Refund/Use

DUTY_FREE_SALE

Duty Free Sale

EXCESS_BAGGAGE

Excess Baggage

EXCHANGE_ADJUSTMENT

Exchange Adjustment

EXCHANGE_ORDER

Exchange Order

FIREARMS_CASE

Firearms Case

FREQUENT_FLYER_FEE_OR_PURCHASE

Frequent Flyer Fee/Purchase

FREQUENT_FLYER_FULFILLMENT

Frequent Flyer Fulfillment

FREQUENT_FLYER_OVERNIGHT_DELIVERY_CHARGE

Frequent Flyer Overnight Delivery Charge

GROUP_TICKET

Group Ticket

IN_FLIGHT_ADJUSTMENT

In-flight Adjustment

IN_FLIGHT_CHARGES

In-flight Charges

IN_FLIGHT_DUTY_FREE_PURCHASE

In-flight Duty Free Purchase

IN_FLIGHT_MERCHANDISE_ORDERED

In-flight Merchandise Ordered

IN_FLIGHT_PHONE_CHARGES

In-flight Phone Charges

KENNEL_CHARGE

Kennel Charge

LOST_TICKET_APPLICATION

Lost Ticket Application

MISCELLANEOUS_CHARGE_ORDER_OR_PREPAID_TICKET_ADVICE

Misc. Charge Order (MCO) / Prepaid Ticket Auth.

MISCELLANEOUS_TAXES_FEES

Miscellaneous Tax(es) Fee(s)

PASSENGER_TICKET

Passenger Ticket

SELF_SERVICE_TICKETS

Self-Service Ticket(s)

SENIOR_CITIZEN_DISCOUNT_BOOKLETS

Senior Citizen Discount Booklets

SMALL_PACKAGE_DELIVERY

Small Package Delivery

SPECIAL_SERVICE_TICKET

Special Service Ticket

SUPPORTED_REFUND

Supported Refund

TICKET_BY_MAIL

Ticket by Mail

TOUR_DEPOSIT

Tour Deposit

TOUR_ORDER_VOUCHER

Tour Order Voucher

UNDERCHARGE_ADJUSTMENT

Undercharge Adjustment

UNSUPPORTED_REFUND

Unsupported Refund

UPGRADE_CHARGE

Upgrade Charge

VENDOR_REFUND_CREDIT

Vendor Refund Credit

VENDOR_SALE

Vendor Sale

airline.itinerary CONDITIONAL

Itinerary details

airline.itinerary.leg[n] CONDITIONAL

Travel leg details.

airline.itinerary.leg[n].carrierCode Regex CONDITIONAL

The 2-character IATA airline code or 3 digit accounting code or both of the airline carrier for the trip leg.

Data must match regex

regex \w{2}|\d{3}|\w{2}/\d{3} message Carrier code must be 2 characters, 3 digits or a combination of both in the format: ZZ/999
airline.itinerary.leg[n].conjunctionTicketNumber Alphanumeric CONDITIONAL

The ticket containing the coupon for this leg for an itinerary with more than four trip legs.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.itinerary.leg[n].couponNumber Alphanumeric CONDITIONAL

The coupon number on the ticket for the trip leg.

Each trip leg requires a separate coupon. The coupon within the series is identified by the coupon number.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 1
airline.itinerary.leg[n].departureAirport Upper case alphabetic text CONDITIONAL

The 3 character IATA airport code of the departure airport for the trip leg.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.itinerary.leg[n].departureDate Date CONDITIONAL

Date of departure for the trip leg.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

airline.itinerary.leg[n].departureTax Decimal CONDITIONAL

Tax payable on departure for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].departureTime Time CONDITIONAL

Departure time in local time for the departure airport for this trip leg.

Data must comply with ISO 8601 extended time formats, hh:mm[:ss]Z or hh:mm[:ss](+/-)hh[:mm]

airline.itinerary.leg[n].destinationAirport Upper case alphabetic text CONDITIONAL

The 3 character IATA airport code for the destination airport for the trip leg.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.itinerary.leg[n].destinationArrivalTime Time CONDITIONAL

Arrival time in local time for the destination airport for this trip leg.

Data must comply with ISO 8601 extended time formats, hh:mm[:ss]Z or hh:mm[:ss](+/-)hh[:mm]

airline.itinerary.leg[n].endorsementsRestrictions Alphanumeric CONDITIONAL

Restrictions (e.g. non-refundable) or endorsements applicable to the trip leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 20
airline.itinerary.leg[n].exchangeTicketNumber Alphanumeric CONDITIONAL

New ticket number issued when a ticket is exchanged for the trip leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.itinerary.leg[n].fare Decimal CONDITIONAL

Total fare payable for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].fareBasis Alphanumeric CONDITIONAL

Code defining the rules forming the basis of the fare (type of fare, class entitlement, etc.)

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 24
airline.itinerary.leg[n].fees Decimal CONDITIONAL

Total fees payable for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].flightNumber Alphanumeric CONDITIONAL

The flight number for the trip leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 4 Max length: 6
airline.itinerary.leg[n].stopoverPermitted Boolean CONDITIONAL

Indicates if a stopover is permitted for the trip leg.

JSON boolean values 'true' or 'false'.

airline.itinerary.leg[n].taxes Decimal CONDITIONAL

Total taxes payable for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].travelClass Alphanumeric CONDITIONAL

The industry code indicating the class of service (e.g. Business, Coach) for the leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 3
airline.itinerary.numberInParty Digits CONDITIONAL

Number of passengers associated with this booking.

Data is a string that consists of the characters 0-9.

Min length: 1 Max length: 3
airline.itinerary.originCountry Upper case alphabetic text CONDITIONAL

The 3 character ISO 3166-1 alpha-3 country code of the country of origin for the itinerary.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.passenger[n] CONDITIONAL

Passenger details

airline.passenger[n].firstName String CONDITIONAL

First name of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 50
airline.passenger[n].lastName String CONDITIONAL

Last name of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 20
airline.passenger[n].middleName String CONDITIONAL

Middle name of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 50
airline.passenger[n].specificInformation Alphanumeric CONDITIONAL

Passenger specific information recorded on the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 59
airline.passenger[n].title String CONDITIONAL

Title of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 20
airline.planNumber Alphanumeric CONDITIONAL

Plan number supplied by the airline for this booking.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 2 Max length: 2
airline.ticket CONDITIONAL

Ticket details

airline.ticket.conjunctionTicketIndicator Boolean CONDITIONAL

Indicates if a conjunction ticket with additional coupons was issued.

Conjunction ticket refers to two or more tickets concurrently issued to a passenger and which together constitute a single contract of carriage.

JSON boolean values 'true' or 'false'.

airline.ticket.customerReference String CONDITIONAL

Information supplied by the customer.

For example, Frequent Flyer number.

Data can consist of any characters

Min length: 1 Max length: 20
airline.ticket.eTicket Boolean CONDITIONAL

Indicates if an electronic ticket was issued.

JSON boolean values 'true' or 'false'.

airline.ticket.exchangedTicketNumber Alphanumeric CONDITIONAL

The original ticket number when this is a transaction for an exchanged ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.ticket.issue CONDITIONAL

Ticket issue information.

airline.ticket.issue.address String CONDITIONAL

The address where the ticket was issued.

Data can consist of any characters

Min length: 1 Max length: 16
airline.ticket.issue.carrierCode Regex CONDITIONAL

The 2-character IATA airline code or 3 digit accounting code or both of the airline carrier issuing the ticket.

Data must match regex

regex \w{2}|\d{3}|\w{2}/\d{3} message Carrier code must be 2 characters, 3 digits or a combination of both in the format: ZZ/999
airline.ticket.issue.carrierName Alphanumeric CONDITIONAL

Name of airline carrier issuing the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 25
airline.ticket.issue.city Alphanumeric CONDITIONAL

The city/town where the ticket was issued.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 18
airline.ticket.issue.country Upper case alphabetic text CONDITIONAL

The 3 character ISO 3166-1 alpha-3 country code of the country where the ticket was issued.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.ticket.issue.date Date CONDITIONAL

The date the ticket was issued.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

airline.ticket.issue.travelAgentCode Alphanumeric CONDITIONAL

Industry code of the travel agent issuing the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 8 Max length: 9
airline.ticket.issue.travelAgentName Alphanumeric CONDITIONAL

Name of the travel agent issuing the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 30
airline.ticket.restricted Boolean CONDITIONAL

Indicates if the issued ticket is refundable.

JSON boolean values 'true' or 'false'.

airline.ticket.ticketNumber Alphanumeric CONDITIONAL

The airline ticket number associated with the transaction.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.ticket.totalFare Decimal CONDITIONAL

Total fare for all trip legs on the ticket.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.ticket.totalFees Decimal CONDITIONAL

Total fee for all trip legs on the ticket.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.ticket.totalTaxes Decimal CONDITIONAL

Total taxes for all trip legs on the ticket.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.transactionType Enumeration CONDITIONAL

The type of transaction performed against this airline booking.

Transaction Type

Value must be a member of the following list. The values are case sensitive.

EXCHANGE_TICKET

Exchange Ticket

MISCELLANEOUS_CHARGE

Miscellaneous Charge

REFUND

Refund

REVERSAL

Reversal

TICKET_PURCHASE

Ticket Purchase

TOUR_ORDER

Tour Order

authorizationResponse CONDITIONAL

Information on fields returned by some acquirers for an authorization or pay transaction.

authorizationResponse.cardLevelIndicator String CONDITIONAL

Indicates the card level result returned by the issuer.

Data can consist of any characters

Min length: 1 Max length: 2
authorizationResponse.cardSecurityCodeError String CONDITIONAL

CSC Incorrect Indicator.

An indicator, provided by the Issuer in the authorization response, to identify the presence of an invalid card security code (CSC). If there is an error, the Issuer will respond with the 1-byte CSC Error Code (Y).

Data can consist of any characters

Min length: 1 Max length: 1
authorizationResponse.commercialCard Enumeration CONDITIONAL

Indicates if the card used is a commercial card.

Value must be a member of the following list. The values are case sensitive.

COMMERCIAL_CARD
NOT_A_COMMERCIAL_CARD
UNDETERMINED
authorizationResponse.commercialCardIndicator Enumeration CONDITIONAL

Indicates the type of commercial card as returned by the card issuer.

Value must be a member of the following list. The values are case sensitive.

BUSINESS_CARD
COMMERCIAL_AND_CONSUMER
COMMERCIAL_CARD
CONSUMER_CARD
CORPORATE_CARD
DECLINE_OR_NOT_COMMERCIAL_CARD
OTHER
PURCHASING_CARD
authorizationResponse.date String CONDITIONAL

The local date, in MMDD format, on which the transaction occurred.

Data can consist of any characters

Min length: 1 Max length: 4
authorizationResponse.financialNetworkCode String CONDITIONAL

Indicates the code of the financial network that was used to process the transaction with the issuer.

Data can consist of any characters

Min length: 1 Max length: 3
authorizationResponse.marketSpecificData String CONDITIONAL

Indicates the market or the industry associated with the payment.

For example, B may indicate "bill payment" depending on the acquirer.

Data can consist of any characters

Min length: 1 Max length: 1
authorizationResponse.merchantAdviceCode String CONDITIONAL

This field contains data returned by the issuer or card network to clearly communicate to merchants the reason for declining a MasterCard or Visa transaction.

Merchants can use this information to determine the best action to take. Please refer to Troubleshooting & FAQs - What if my transaction gets declined? for the list of values and their meaning.

Data can consist of any characters

Min length: 1 Max length: 2
authorizationResponse.paySvcData String CONDITIONAL

Payment Service Data required in settlement request.

Data can consist of any characters

Min length: 1 Max length: 23
authorizationResponse.posData String CONDITIONAL

Indicates the specific card information conditions for capture that are available when the card transaction occurs at point of service.

Data can consist of any characters

Min length: 1 Max length: 13
authorizationResponse.posEntryMode String CONDITIONAL

The POS Entry Mode provided to Discover (JCB (US Domestic only), and Diners) for the authorization.

Bytes 1-2: Discover (JCB (US Domestic only), and Diners) POS Entry Mode
Byte 3: Discover (JCB (US Domestic only), and Diners) Pin Entry Capability
Byte 4: RFU (Always zero)

Note: Only the first 3 bytes are required for settlement processing.

Data can consist of any characters

Min length: 1 Max length: 4
authorizationResponse.posEntryModeChanged String CONDITIONAL

If the entry mode has changed, the Issuer will respond with the 1-byte POS Entry Mode Change (Y).

Data can consist of any characters

Min length: 1 Max length: 1
authorizationResponse.processingCode String CONDITIONAL

Identifies the type of Card Transaction sent to Card Acceptor.

Data can consist of any characters

Min length: 1 Max length: 6
authorizationResponse.responseCode String CONDITIONAL

The response code which indicates the status of the transaction.

Data can consist of any characters

Min length: 1 Max length: 3
authorizationResponse.responseMessage String CONDITIONAL

Textual description of the acquirer response code for displaying on terminals.

Data can consist of any characters

Min length: 1 Max length: 16
authorizationResponse.returnAci String CONDITIONAL

The ACI (Authorization Characteristics Indicator) returned by the issuer.

Data can consist of any characters

Min length: 1 Max length: 1
authorizationResponse.stan String CONDITIONAL

The System Trace Audit Number is assigned by a transaction originator to assist in identifying a Card Transaction.

The trace number remains unchanged for the life of the Card Transaction.

Data can consist of any characters

Min length: 1 Max length: 6
authorizationResponse.time String CONDITIONAL

The local time, in HHMMSS format, during which the transaction occurred.

Data can consist of any characters

Min length: 1 Max length: 6
authorizationResponse.trackQuality String CONDITIONAL

Indicates the magnetic stripe condition and the vulnerability for fraud in Discover Network Card Transactions.

Data can consist of any characters

Min length: 1 Max length: 2
authorizationResponse.transactionIdentifier String CONDITIONAL

The unique identifier for the transaction returned by the issuer.

Data can consist of any characters

Min length: 1 Max length: 15
authorizationResponse.validationCode String CONDITIONAL

The validation code returned by the issuer.

This value must be stored to be sent with the capture transaction.

Data can consist of any characters

Min length: 1 Max length: 4
authorizationResponse.vpasResponse String CONDITIONAL

The response returned by the issuer indicating whether the 3DSecure authentication token was validated or not.

Data can consist of any characters

Min length: 1 Max length: 1
billing CONDITIONAL
billing.address CONDITIONAL

The billing address of the person.

billing.address.city String CONDITIONAL

The city portion of the payers address.

Data can consist of any characters

Min length: 1 Max length: 100
billing.address.country Upper case alphabetic text CONDITIONAL

The 3 letter ISO standard alpha country code of the payers address.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
billing.address.postcodeZip Alphanumeric + additional characters CONDITIONAL

The post code or zip code of the payers address.

Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'

Min length: 1 Max length: 10
billing.address.stateProvince String CONDITIONAL

The state or province of the payers address.

Data can consist of any characters

Min length: 1 Max length: 20
billing.address.street String CONDITIONAL

The street name and number, or the Post Office Box details, of the payers address.

Data can consist of any characters

Min length: 1 Max length: 100
billing.phone String CONDITIONAL

The phone number of the person to whom the order is being billed.

Data can consist of any characters

Min length: 1 Max length: 20
card CONDITIONAL
card.expiry CONDITIONAL

Expiry date, as shown on the card.

card.expiry.month Digits ALWAYS PROVIDED

Month, as shown on the card.

Months are numbered January=1, through to December=12.

Data is a number between 1 and 12 represented as a string.

card.expiry.year Digits ALWAYS PROVIDED

Year, as shown on the card.

The Common Era year is 2000 plus this value.

Data is a string that consists of the characters 0-9.

Min length: 2 Max length: 2
card.holder CONDITIONAL
card.holder.firstName String CONDITIONAL

The first name of the person that the bill is being sent to.

Data can consist of any characters

Min length: 1 Max length: 50
card.holder.fullName String CONDITIONAL

The full name of the person that the bill is being sent to.

Data can consist of any characters

Min length: 1 Max length: 100
card.holder.lastName String CONDITIONAL

The last name or surname of the person that the bill is being sent to.

Data can consist of any characters

Min length: 1 Max length: 50
card.holder.middleName String CONDITIONAL

The middle name of the person that the bill is being sent to.

If there is more than one middle name, this is the first middle name.

Data can consist of any characters

Min length: 1 Max length: 50
card.holder.title String CONDITIONAL

The title of the person that the bill is being sent to.

Data can consist of any characters

Min length: 0 Max length: 20
card.number Masked digits ALWAYS PROVIDED

The account number embossed onto the card.

The number will be masked according to your masking settings and how you authenticated your call to the API.

If you authenticated using certificate authentication, then your masking settings will be used. This allows you to return unmasked card numbers if you have chosen not to apply masking.

If you authenticated to the API by a means other than certificate authentication, then the card number will be returned with your masking settings or 6.4; whichever is more restrictive for example, 000000xxxxxx0000.

Data is a string that consists of the characters 0-9, plus 'x' for masking

Min length: 9 Max length: 19
card.scheme Enumeration ALWAYS PROVIDED

Card scheme of the supplied card.

Value must be a member of the following list. The values are case sensitive.

AMEX

American Express

CHINA_UNIONPAY

China UnionPay

DINERS_CLUB

Diners Club

DISCOVER

Discover

JCB

JCB (Japan Credit Bureau)

MASTERCARD

MasterCard

OTHER

The scheme of the card used in the transaction could not be identified.

RUPAY

RuPay

UATP

UATP (Universal Air Travel Plan)

VISA

Visa

card.securityCodePresence Alphanumeric CONDITIONAL

The code used to indicate the existence of the Card Security Code value.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 2
card.sequenceNumber Digits CONDITIONAL

The card sequence number for transactions where the data is read through a chip on the EMV card.

Data is a string that consists of the characters 0-9.

Min length: 3 Max length: 3
card.trackDataProvided Boolean CONDITIONAL

Indicates whether card track data is provided.

JSON boolean values 'true' or 'false'.

correlationId String CONDITIONAL

A transient identifier for the request, that can be used to match the response to the request.

The value provided is not validated, does not persist in the gateway, and is returned as provided in the response to the request.

Data can consist of any characters

Min length: 1 Max length: 100
currencyConversion CONDITIONAL

Currency Conversion specific data

currencyConversion.baseAmount Decimal CONDITIONAL

The amount of the transaction in the base (merchant-configured) currency.

Used if the transaction amount is an amount that was converted from a base currency amount.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
currencyConversion.baseCurrency Upper case alphabetic text CONDITIONAL

The base (merchant-configured) currency of the transaction expressed as an ISO 4217 alpha code.

Used if the transaction amount is an amount that was converted from a base currency amount.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
customer CONDITIONAL
customer.ani String CONDITIONAL

The telephone number captured by ANI (Automatic Number Identification) when the customer calls to place the order.

Data can consist of any characters

Min length: 1 Max length: 10
customer.aniCallType String CONDITIONAL

The 2 digit ANI information identifier provided by the telephone company to indicate the call type, for example, cellular (61-63), toll free (24,25), etc.

Data can consist of any characters

Min length: 1 Max length: 2
customer.browser String CONDITIONAL

The web browser used by the customer to place the order.

For example, MOZILLA/4.0 (COMPATIBLE; MSIE 5.0; WINDOWS 95)

Data can consist of any characters

Min length: 1 Max length: 255
customer.email Email CONDITIONAL

The email address of the customer.

Ensures that the email address is longer than 3 characters and adheres to a generous subset of valid RFC 2822 email addresses

customer.hostname String CONDITIONAL

The name of the server to which the customer is connected.

Data can consist of any characters

Min length: 1 Max length: 60
customer.ipAddress String CONDITIONAL

The IP address of the computer used by the customer, in nnn.nnn.nnn.nnn format.

Data can consist of any characters

Min length: 7 Max length: 15
merchant Alphanumeric + additional characters ALWAYS PROVIDED

The unique identifier issued to you by your payment provider.

This identifier can be up to 12 characters in length.

Data may consist of the characters 0-9, a-z, A-Z, '-', '_'

Min length: 1 Max length: 40
order ALWAYS PROVIDED

Information about the order

order.id Integer ALWAYS PROVIDED

The unique identifier of the order, that distinguishes it from any other order you ever issue.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 0 Max value: 9999999999999999
order.productSKU String CONDITIONAL

Unique SKU (Stock Keeping Unit) identifier of the product associated with this authorization/pay request.

In case of multiple products, enter the SKU for the single, most expensive product.

Data can consist of any characters

Min length: 1 Max length: 15
order.reference String CONDITIONAL

The value provided by you to identify the order.

Data can consist of any characters

Min length: 1 Max length: 200
order.totalAuthorizedAmount Decimal ALWAYS PROVIDED

The transaction amount

Data is a decimal number.

Max value: 1000000000000 Min value: 0 Max post-decimal digits: 3
order.totalCapturedAmount Decimal ALWAYS PROVIDED

The transaction amount

Data is a decimal number.

Max value: 1000000000000 Min value: 0 Max post-decimal digits: 3
order.totalRefundedAmount Decimal ALWAYS PROVIDED

The transaction amount

Data is a decimal number.

Max value: 1000000000000 Min value: 0 Max post-decimal digits: 3
paymentPlan CONDITIONAL

Information about the payment plan selected by the cardholder.

paymentPlan.finalAmount Decimal ALWAYS PROVIDED

The total amount payable by the cardholder, including interest for this plan.

The amount is expressed as a decimal number in the units of the currency. For example 12.34 in USD is the amount 12 dollars and 34 cents. This field is returned only when plan type is AMEX_PlanAmex.

Data is a decimal number.

Max value: 2140000000 Min value: 0.001 Max post-decimal digits: 3
paymentPlan.interestRate Decimal ALWAYS PROVIDED

The interest rate applied to the purchase amount for this plan.

This field is returned only when plan type is AMEX_PlanAmex.

Data is a decimal number.

Max value: 100 Min value: 0
paymentPlan.numberOfDeferrals Integer ALWAYS PROVIDED

The number of months for which the payment is deferred.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 1 Max value: 99
paymentPlan.numberOfPayments Integer ALWAYS PROVIDED

The number of monthly payments payable by the cardholder.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 1 Max value: 99
paymentPlan.paymentAmount Decimal ALWAYS PROVIDED

The value of each monthly payment for the selected plan.

The amount is expressed as a decimal number in the units of the currency. For example 12.34 in USD is the amount 12 dollars and 34 cents. This field is returned only when plan type is AMEX_PlanAmex.

Data is a decimal number.

Max value: 2140000000 Min value: 0.001 Max post-decimal digits: 3
paymentPlan.planId String ALWAYS PROVIDED

The unique identifier for the payment plan.

This field is valid only if plan type is Banamex_Custom. It is the system-generated identifier assigned to the plan when it is configured for the merchant in the payment gateway

Data can consist of any characters

Min length: 1 Max length: 16
paymentPlan.type Enumeration ALWAYS PROVIDED

The type of payment plan.

Value must be a member of the following list. The values are case sensitive.

AMEX_PLANAMEX
AMEX_PLANN
BANAMEX_CUSTOM
posTerminal CONDITIONAL

Information on POS terminal for a card present transaction.

posTerminal.attended Enumeration CONDITIONAL

Indicates if the terminal has been attended by the merchant.

Value must be a member of the following list. The values are case sensitive.

ATTENDED

Attended terminal.

UNATTENDED

Unattended terminal.

UNKNOWN_OR_UNSPECIFIED

Unknown or unspecified.

posTerminal.cardholderActivated Enumeration CONDITIONAL

Indicates if the terminal is activated by the cardholder.

Value must be a member of the following list. The values are case sensitive.

NOT_CARDHOLDER_ACTIVATED

Terminal is not activated by the cardholder.

SELF_SERVICE_TERMINAL

Terminal is self serviced.

posTerminal.entryMode Digits CONDITIONAL

Indicates the entry mode the cardholder/merchant used to enter the PAN and PIN details of the card.

The first two digits indicate the PAN entry mode and the last digit indicates the PIN entry mode. For example, 011 may indicate manual PAN entry (01) with PIN entry on the terminal (1).

PAN ENTRY Mode
01 - Manual Entry
02 - Magnetic stripe read, but full unaltered contents not provided
04 - OCR/MICR coding read
05 - PAN auto entry via chip
07 - Auto-entry via contactless magnetic chip
79 - Chip card at chip-capable terminal was unable to process transaction using data on the chip or magnetic stripe on the card-therefore, PAN entry via manual entry
80 - Chip card at chip-capable terminal was unable to process transaction using data on the chip therefore; the terminal defaulted to the magnetic stripe read for the PAN. This is referred to as fallback.
90 - Magnetic stripe read and full, unaltered contents provided
91 - Auto-entry via contactless magnetic strip

PIN Entry Mode
0 - Unspecified or unknown
1 - Terminal has PIN entry capability
2 - Terminal does not have PIN entry capability (default)
8 - Terminal has PIN entry capability but PIN pad is not currently operative

Data is a string that consists of the characters 0-9.

Min length: 3 Max length: 3
posTerminal.inputCapability Enumeration CONDITIONAL

Indicates the type of input the terminal is capable of receiving.

Inputs include Magnetic strip read (MSR) key entry, chip, contactless MSR/chip, etc.

Value must be a member of the following list. The values are case sensitive.

CHIP

Chip read only.

CHIP_AND_KEY_ENTRY_AND_MAGNETIC_STRIPE

MSR, chip and key entry.

CHIP_AND_MAGNETIC_STRIPE

MSR and chip.

CONTACTLESS_CHIP

Contactless chip.

CONTACTLESS_MAGNETIC_STRIPE

Contactless MSR.

KEY_ENTRY

Key entry only.

KEY_ENTRY_AND_MAGNETIC_STRIPE

MSR and key entry.

MAGNETIC_STRIPE

Magnetic strip read (MSR) only.

posTerminal.location Enumeration CONDITIONAL

Indicates the physical location of the terminal in relation to the card acceptor facility.

Value must be a member of the following list. The values are case sensitive.

OFF_CARD_ACCEPTOR_PREMISES

Off premises of card acceptor.

ON_CARD_ACCEPTOR_PREMISES

On premises of card acceptor.

response ALWAYS PROVIDED
response.acquirerCode ASCII Text CONDITIONAL

Value as generated by the acquirer that summarizes the success or otherwise of the proposed operation.

Data consists of ASCII characters

Min length: 1 Max length: 100
response.acquirerMessage ASCII Text CONDITIONAL

The response from the acquirer in the text form.

This field is used in addition to response.acquirerCode for some acquirers where additional information needs to be communicated. For example, contact details to allow the merchant to contact the issuer directly to seek authorisation for the transaction.

Data consists of ASCII characters

Min length: 1 Max length: 255
response.cardSecurityCode CONDITIONAL
response.cardSecurityCode.acquirerCode ASCII Text CONDITIONAL

The acquirer CSC response code generated by the card issuing institution.

Data consists of ASCII characters

Min length: 1 Max length: 100
response.cardSecurityCode.gatewayCode Enumeration CONDITIONAL

The card security code result generated to indicate whether the data supplied matches the data held by the cardholder's issuing bank.

Value must be a member of the following list. The values are case sensitive.

MATCH

Valid or matched.

NOT_PRESENT

Merchant indicated CSC not present on card.

NOT_PROCESSED

Not processed.

NOT_SUPPORTED

Card issuer is not registered and/or certified

NO_MATCH

Invalid or not matched.

response.cardholderVerification CONDITIONAL
response.cardholderVerification.avs CONDITIONAL

The result returned after the billing address provided by the cardholder has been compared with the address held at the cardholder's issuing bank.

response.cardholderVerification.avs.acquirerCode ASCII Text CONDITIONAL

The acquirer AVS response code generated by the card issuing institution.

Data consists of ASCII characters

Min length: 1 Max length: 100
response.cardholderVerification.avs.gatewayCode Enumeration CONDITIONAL

The address verification result generated to indicate whether the address data supplied matches the data held by the cardholder's issuing bank.

Value must be a member of the following list. The values are case sensitive.

ADDRESS_MATCH

Street address matched

ADDRESS_ZIP_MATCH

Street address and zip/postcode were matched

NAME_ADDRESS_MATCH

Card holder name and street address matched

NAME_MATCH

Card holder name matched

NAME_ZIP_MATCH

Card holder name and zip/postcode matched

NOT_AVAILABLE

No data available from issuer or AVS data not supported for transaction

NOT_REQUESTED

AVS not requested

NOT_VERIFIED

AVS could not be verified for an international transaction

NO_MATCH

No match

SERVICE_NOT_AVAILABLE_RETRY

Issuer system is unavailable. Retry can be attempted

SERVICE_NOT_SUPPORTED

Service currently not supported by acquirer or merchant

ZIP_MATCH

Zip/postcode matched. Street address not matched

response.cardholderVerification.detailedVerification[n] CONDITIONAL

Results of the additional verification checks where an acquirer offers advanced cardholder verification and the data has been supplied in the Verify request.

response.cardholderVerification.detailedVerification[n].gatewayCode Enumeration CONDITIONAL

The result returned after the specified data type has been verified by the acquirer.

Value must be a member of the following list. The values are case sensitive.

MATCHED

Data provided by cardholder matches record held by the cardholder's issuing bank.

NOT_CHECKED

Unable to perform verification checks on data provided.

NOT_MATCHED

Data provided by cardholder does NOT match record held by the cardholder's issuing bank.

NOT_PROVIDED

Verification could not be performed as data not provided.

SERVICE_NOT_AVAILABLE_RETRY

Issuer system is unavailable. Retry can be attempted

SERVICE_NOT_SUPPORTED

Service currently not supported by acquirer or merchant

response.cardholderVerification.detailedVerification[n].type Enumeration CONDITIONAL

The data type which has been verified by the acquirer.

Value must be a member of the following list. The values are case sensitive.

BILLING_PHONE

The phone number of the person that the bill is being sent to.

BILLING_POSTCODE_ZIP

The Postal/Zip code of the billing address.

BILLING_STREET_ADDRESS

The street name and number of the billing address.

CARDHOLDER_NAME

The full name of the cardholder.

CUSTOMER_EMAIL

The email address of the customer.

response.debugInformation String CONDITIONAL

The container for additional information about a transaction.

Only returned for some errors and is dependent on the merchant's configuration. Returned in error, declined and approved scenarios, but would only be used to trouble shoot issues.

Data can consist of any characters

Min length: 1 Max length: 2064
response.gatewayCode Enumeration ALWAYS PROVIDED

Summary of the success or otherwise of the proposed operation.

Value must be a member of the following list. The values are case sensitive.

ABORTED

Transaction aborted by payer

ACQUIRER_SYSTEM_ERROR

Acquirer system error occurred processing the transaction

APPROVED

Transaction Approved

APPROVED_PENDING_SETTLEMENT

Transaction Approved - pending batch settlement

AUTHENTICATION_FAILED

Payer authentication failed

BLOCKED

Transaction blocked due to Risk or 3D Secure blocking rules

CANCELLED

Transaction cancelled by payer

DECLINED

The requested operation was not successful. For example, a payment was declined by issuer or payer authentication was not able to be successfully completed.

DECLINED_AVS

Transaction declined due to address verification

DECLINED_AVS_CSC

Transaction declined due to address verification and card security code

DECLINED_CSC

Transaction declined due to card security code

DECLINED_DO_NOT_CONTACT

Transaction declined - do not contact issuer

DECLINED_PAYMENT_PLAN

Transaction declined due to payment plan

DEFERRED_TRANSACTION_RECEIVED

Deferred transaction received and awaiting processing

DUPLICATE_BATCH

Transaction declined due to duplicate batch

EXCEEDED_RETRY_LIMIT

Transaction retry limit exceeded

EXPIRED_CARD

Transaction declined due to expired card

INSUFFICIENT_FUNDS

Transaction declined due to insufficient funds

INVALID_CSC

Invalid card security code

LOCK_FAILURE

Order locked - another transaction is in progress for this order

NOT_ENROLLED_3D_SECURE

Card holder is not enrolled in 3D Secure

NOT_SUPPORTED

Transaction type not supported

PENDING

Transaction is pending

REFERRED

Transaction declined - refer to issuer

SYSTEM_ERROR

Internal system error occurred processing the transaction

TIMED_OUT

The gateway has timed out the request to the acquirer because it did not receive a response. You can handle the transaction as a declined transaction. Where possible the gateway will attempt to reverse the transaction.

UNKNOWN

The transaction has been submitted to the acquirer but the gateway was not able to find out about the success or otherwise of the payment. If the gateway subsequently finds out about the success of the payment it will update the response code.

UNSPECIFIED_FAILURE

Transaction could not be processed

response.risk CONDITIONAL
response.risk.gatewayCode Enumeration CONDITIONAL

The overall result of risk assessment returned by the Payment Gateway for each authorization or pay transaction.

Value must be a member of the following list. The values are case sensitive.

ACCEPT

Order accepted

NOT_CHECKED

Merchant risk rules were not checked and system rules did not reject the Order

REJECT

Order rejected

REVIEW

Order marked for review

SYSTEM_REJECT

Order rejected due to system rule

response.risk.reversalTransactionResult Enumeration CONDITIONAL

The result of order reversal for each authorization or pay transaction that occurred due to risk assessment.

Orders rejected after the financial transaction due to risk assessment are automatically reversed by the system.

Value must be a member of the following list. The values are case sensitive.

FAIL

The gateway failed to reverse the order.

NOT_APPLICABLE

The gateway did not attempt to reverse the order because reversal is not possible. For example, the acquirer does not support order reversals.

OKAY

The gateway successfully reversed the order.

response.risk.reviewResult Enumeration CONDITIONAL

The decision made when the overall risk result returns Review.

Value must be a member of the following list. The values are case sensitive.

NOT_REQUIRED

No review required

ORDER_CANCELLED

The order has been cancelled and a reversal transaction was attempted

ORDER_RELEASED

The order has been released for processing

PENDING

A decision to release/cancel the order is pending

result Enumeration ALWAYS PROVIDED

A system-generated high level overall result of the operation.

Value must be a member of the following list. The values are case sensitive.

FAILURE

The operation was declined or rejected by the gateway, acquirer or issuer

PENDING

The operation is currently in progress or pending processing

SUCCESS

The operation was successfully processed

UNKNOWN

The result of the operation is unknown

shipping CONDITIONAL
shipping.address CONDITIONAL

The shipping address of the person.

shipping.address.city String CONDITIONAL

The city portion of the payers address.

Data can consist of any characters

Min length: 1 Max length: 100
shipping.address.country Upper case alphabetic text CONDITIONAL

The 3 letter ISO standard alpha country code of the payers address.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
shipping.address.postcodeZip Alphanumeric + additional characters CONDITIONAL

The post code or zip code of the payers address.

Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'

Min length: 1 Max length: 10
shipping.address.stateProvince String CONDITIONAL

The state or province of the payers address.

Data can consist of any characters

Min length: 1 Max length: 20
shipping.address.street String CONDITIONAL

The street name and number, or the Post Office Box details, of the payers address.

Data can consist of any characters

Min length: 1 Max length: 100
shipping.firstName String CONDITIONAL

The first name of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 50
shipping.fullName String CONDITIONAL

The full name of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 100
shipping.lastName String CONDITIONAL

The last name or surname of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 50
shipping.method Enumeration CONDITIONAL

The shipping method code to indicate the time frame and the priority of the order.

Value must be a member of the following list. The values are case sensitive.

ELECTRONIC

Electronic delivery.

GROUND

Ground (4 or more days).

OVERNIGHT

Overnight (next day).

PRIORITY

Priority (2-3 days).

SAME_DAY

Same day.

shipping.middleName String CONDITIONAL

The middle name of the person to whom the order is being shipped.

If there is more than one middle name, this is the first middle name.

Data can consist of any characters

Min length: 1 Max length: 50
shipping.phone String CONDITIONAL

The phone number of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 20
shipping.title String CONDITIONAL

The title of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 20
transaction ALWAYS PROVIDED
transaction.acquirer ALWAYS PROVIDED
transaction.acquirer.customData String CONDITIONAL

Additional information requested by the acquirer which cannot be passed using other available data fields.

This field must not contain sensitive data.

Data can consist of any characters

Min length: 1 Max length: 4000
transaction.acquirer.date String CONDITIONAL

The date the transaction was processed, as returned by the acquirer.

Not returned by most acquirers.

Data can consist of any characters

Min length: 1 Max length: 4000
transaction.acquirer.id String ALWAYS PROVIDED

The ID for the acquirer used to process the transaction.

Data can consist of any characters

Min length: 1 Max length: 40
transaction.acquirer.time String CONDITIONAL

The time the transaction was processed, as returned by the acquirer.

Not returned by most acquirers.

Data can consist of any characters

Min length: 1 Max length: 4000
transaction.amount Decimal ALWAYS PROVIDED

Transaction Amount.

Expressed as a decimal number in the units of the currency. For example 12.34 in USD is the amount 12 dollars and 34 cents.

Data is a decimal number.

Max value: 1000000000000 Min value: 0 Max post-decimal digits: 3
transaction.authorizationCode ASCII Text CONDITIONAL

Value generated by the issuing bank in response to a proposal to transfer funds.

Data consists of ASCII characters

Min length: 1 Max length: 100
transaction.batch Integer CONDITIONAL

The batch in which the transaction was processed.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 1 Max value: 2147483647
transaction.cashAdvance Boolean CONDITIONAL

Set this flag if the transaction is a manual cash disbursement transaction, i.e. cash is disbursed upon the acceptance of a card by a financial institution teller.

JSON boolean values 'true' or 'false'.

transaction.currency Upper case alphabetic text ALWAYS PROVIDED

The currency of the order expressed as an ISO 4217 alpha code.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
transaction.customerReference ASCII Text CONDITIONAL

The customer's own reference corresponding to the transaction.

For example, an invoice number. Data may be reformatted according to acquirer field requirements.

Data consists of ASCII characters

Min length: 0 Max length: 25
transaction.frequency Enumeration CONDITIONAL

Indicates the frequency of the transaction offered to the payer.

Value must be a member of the following list. The values are case sensitive.

INSTALLMENT

Indicates an installment transaction where the payer authorizes you to deduct multiple payments over an agreed period of time for a single purchase.

RECURRING

Indicates a recurring transaction where the payer authorizes you to automatically debit their accounts for bill or invoice payments.

SINGLE

Indicates a single transaction where a single payment is used to complete the order.

transaction.id String ALWAYS PROVIDED

The unique identifier of the transaction, that distinguishes it from other transactions on the order.

Data can consist of any characters

Min length: 1 Max length: 40
transaction.receipt ASCII Text CONDITIONAL

A unique reference generated by the acquirer for a specific merchant interaction.

The reference may be used when contacting the acquirer about a specific transaction.

Data consists of ASCII characters

Min length: 1 Max length: 100
transaction.reference String CONDITIONAL

The value provided by you to identify the transaction within all orders.

Data can consist of any characters

Min length: 1 Max length: 40
transaction.source Enumeration CONDITIONAL

Indicates the source through which you received the transaction.

Value must be a member of the following list. The values are case sensitive.

CALL_CENTRE

Transaction conducted via a call centre.

CARD_PRESENT

Transaction where the card is presented to the merchant.

INTERNET

Transaction conducted over the Internet.

MAIL_ORDER

Transaction received by mail.

MOTO

Transaction received by mail or telephone.

TELEPHONE_ORDER

Transaction received by telephone.

VOICE_RESPONSE

Transaction conducted by a voice/DTMF recognition system.

transaction.tax CONDITIONAL
transaction.tax.local CONDITIONAL
transaction.tax.local.amount Decimal CONDITIONAL

Local tax amount.

Expressed as a decimal number in the units of the currency. For example 12.34 in USD is the amount 12 dollars and 34 cents.

Data is a decimal number.

Max value: 1000000000000 Min value: 0 Max post-decimal digits: 3
transaction.tax.local.exempt Boolean CONDITIONAL

Indicates whether the transaction is exempt from local tax or not.

JSON boolean values 'true' or 'false'.

transaction.tax.local.reference String CONDITIONAL

Local tax reference value associated with the transaction.

Data can consist of any characters

Min length: 1 Max length: 20
transaction.terminal String CONDITIONAL

The terminal configured at the processor/acquirer used to process the transaction.

Data can consist of any characters

Min length: 1 Max length: 16
transaction.type Enumeration ALWAYS PROVIDED

Indicates the type of action performed on the order.

Value must be a member of the following list. The values are case sensitive.

AUTHORIZATION

Authorization

CAPTURE

Capture

PAYMENT

Payment (Purchase)

REFUND

Refund

VERIFICATION

Verification

VOID_AUTHORIZATION

Void Authorization

VOID_CAPTURE

Void Capture

VOID_PAYMENT

Void Payment

VOID_REFUND

Void Refund

Errors

error

Information on possible error conditions that may occur while processing an operation using the API.

error.cause Enumeration

Broadly categorizes the cause of the error.

For example, errors may occur due to invalid requests or internal system failures.

Value must be a member of the following list. The values are case sensitive.

INVALID_REQUEST

The request was rejected because it did not conform to the API protocol.

REQUEST_REJECTED

The request was rejected due to security reasons such as firewall rules, expired certificate, etc.

SERVER_BUSY

The server did not have enough resources to process the request at the moment.

SERVER_FAILED

There was an internal system failure.

error.explanation String

Textual description of the error based on the cause.

This field is returned only if the cause is INVALID_REQUEST or SERVER_BUSY.

Data can consist of any characters

Min length: 1 Max length: 1000
error.field String

Indicates the name of the field that failed validation.

This field is returned only if the cause is INVALID_REQUEST and a field level validation error was encountered.

Data can consist of any characters

Min length: 1 Max length: 100
error.supportCode String

Indicates the code that helps the support team to quickly identify the exact cause of the error.

This field is returned only if the cause is SERVER_FAILED or REQUEST_REJECTED.

Data can consist of any characters

Min length: 1 Max length: 100
error.validationType Enumeration

Indicates the type of field validation error.

This field is returned only if the cause is INVALID_REQUEST and a field level validation error was encountered.

Value must be a member of the following list. The values are case sensitive.

INVALID

The request contained a field with a value that did not pass validation.

MISSING

The request was missing a mandatory field.

UNSUPPORTED

The request contained a field that is unsupported.

result Enumeration

A system-generated high level overall result of the operation.

Value must be a member of the following list. The values are case sensitive.

ERROR

The operation resulted in an error and hence cannot be processed.